import pdfplumber
import re

def get_pdf_word_count_like_ms_word(pdf_path):
    """
    获取与MS Word显示一致的PDF字数统计（中文+标点）
    自动移除页脚页数（如·1·、·2·等格式）
    """
    total_count = 0

    with pdfplumber.open(pdf_path) as pdf:
        for page in pdf.pages:
            # 提取页面文本
            text = page.extract_text()

            if text:
                # 移除页脚页数（如·1·、- 1 -、第1页等）
                text = re.sub(r'[·\-]\s*\d+\s*[·\-]|第\s*\d+\s*页','', text)

                # 移除所有空白字符
                cleaned_text = re.sub(r'[\s\u3000]', '', text)

                # 统计剩余字符
                total_count += len(cleaned_text)
    return total_count


# 使用示例
pdf_path = "建筑工程廉政协议20230228171235.pdf"
count = get_pdf_word_count_like_ms_word(pdf_path)
print(f"PDF字数: {count}")